<!DOCTYPE html>  
<html>
    <meta charset="utf-8" />  
    <title>选择排序</title>  
<body>
    <h1>选择排序</h1>
    <h2>选择排序同样也是一个复杂度为O(n2)的算法</h2>
    <p>
        选择排序算法是一种原址比较排序算法。选择排序算法的思路是：
        找到数据结构中的最小值并 将其放置在第一位，
        接着找到第二小的值并将其放在第二位，以此类推。
    </p>
</body>
<script>  
    // const arr = [1,4,5,8,9,1,2,6];
    // Array.prototype.selectSort = function(){
    //     let indexMin;
    //     for(let i=0;i<this.length-1;i++){
    //         indexMin = i;
    //         for(let j=i+1;j<this.length;j++){
    //             if(this[indexMin]>this[j]){
    //                 indexMin = j;
    //             }
    //         }
    //         if(i!=indexMin){
    //             let aux = this[i];
    //             this[i] = this[indexMin];
    //             this[indexMin] = aux;
    //         }
    //     }
    //     return this;
    // }
    // console.log(arr.selectSort())

    const arr=[1,2,6,8,9,4,0,11];
    Array.prototype.selectSort = function(){
        let minIndex ;
        for(var i=0;i<this.length-1;i++){
            minIndex = i;
            for(var j=i+1;j<this.length;j++){
                if(this[minIndex]<this[j]){
                    minIndex = j;
                }
            }
            if(i!=minIndex){
                var t = this[i];
                this[i] = this[minIndex];
                this[minIndex] = t;
            }
        }
        return this;
    }
    console.log(arr.selectSort())
</script>  
</html>